<?php
	 require_once("interfaces/CategoriaDao.php");
	 class CategoriaDaoImp implements CategoriaDao{
		//armazena a conexão com o BD
        private $conn;
		
		public function __construct(){
			include_once("Conexao.class.php");
			$catCon = new Conexao;
			$this->conn = $catCon->conectar();
		}
		
		public function inserir($cat){
			
			try{
				//Executa a instruação sql
				$this->conn->exec("Insert into categoria values(default,'{$cat->getNome()}','{$cat->getNatureza()}')");
			}catch(PDOException $e){
				print "Erro!: ".$e->getMessage()."\n";
				die();
			}catch(Exception $e){
				print "Erro: ".$e->getMessage()."\n";
			}
			

		}
	 
	 public function deletar($cat){			
			try{			
				//Executa a instruação sql
				$this->conn->exec("Delete from categoria where idCategoria = {$cat->getId()}");
			}catch(PDOException $e){
				print "Erro!: ".$e->getMessage()."\n";
				die();
			}
	 }
	 
	 public function alterar($cat){			
			try{			
				//Executa a instruação sql
				$this->conn->exec("Update funcionarios set nome = '{$cat->getNome()}', cpf = '{$cat->getCpf()}', rg ='{$cat->getRg()}', endereco = '{$cat->getEndereco()}', login = '{$cat->getLogin()}', senha = '{$cat->getSenha()}', telefone1 = '{$cat->getTelefone1()}', telefone2 = '{$cat->getTelefone2()}', administrador = '{$cat->getAdministrador()}' where idCategoria = {$cat->getId()}");
				//fecha a conexão
				$this->conn=null;
			}catch(PDOException $e){
				print "Erro!: ".$e->getMessage()."\n";
				die();
			}
	 }
	 
	 public function buscarNome($cat){
		 try{			
				//Executa a instruação sql
				$result = $this->conn->query("Select * from categoria where nome like '{$cat->getNome()}'");
			}catch(PDOException $e){
				print "Erro!: ".$e->getMessage()."\n";
				die();
			}		
		return $result;
	 }
	 
	  public function __destruct(){
		//fecha a conexão
		$this->conn=null;
	 }
}
			
			
	


?>